package metodosIntegradores;

import funciones.FuncionX;

/**
 * <p>
 * Clase que sirve como punto de acceso a la libreria de metodos integradores utilizados.
 * </p>
 * Al tener agrupados los distintos metodos integradores utilizados, se facilita su uso.
 *
 */

public class MetodosIntegradores {
	
	/**
     * Utiliza el metodo de Romberg para integrar una funcion dada.
     * Puede obtener mayor informacion acerca de este metodo en la clase "Romberg"
     * @param f funcion a intergrar
     * @param a comienzo del intervalo
     * @param b fin del intervalo
     * @param k cantidad de intervalos
     * @return la integral calculada
     */
	public static double romberg(FuncionX f, double a, double b, int k){
		return Romberg.romberg(f, a, b, k);
}
	
    /** Objetivo:
     * Integrar por Simpson una funcion.
     * Puede obtener mayor informacion acerca de este metodo en la clase "Simpson"
     * @param a comienzo del intervalo
     * @param b fin del intervalo
     * @param n numero de divisiones
     * @param f funcion a integrar
     * @return el area bajo la curva
     */
	public static double simpson(double a, double b,
         double n, FuncionX f)  {
		return Simpson.simpson(a, b, n, f);
	}

}
